package visitor;

import syntax_tree.*;

public interface TypeVisitor {
	  public TType visit(TClassDecl a);
	  public TType visit(TDecideFollowID a);
	  public TType visit(TDecideFollowIdEquals a);
	  public TType visit(TDecideFollowIdLSquare a);
	  public TType visit(TExp a);
	  public TType visit(TExpRest a);
	  public TType visit(TExpRestStar a);
	  public TType visit(TFormalStar a);
	  public TType visit(TFormalRest a);
	  public TType visit(TIdentifier a);
	  public TType visit(TMainClass a);
	  public TType visit(TMethodDecl a);
	  public TType visit(TProgram a);
	  public TType visit(TStatement a);
	  public TType visit(TType a);
	  public TType visit(TTypeBoolean a);
	  public TType visit(TTypeIdentifier a);
	  public TType visit(TTypeInt a);
	  public TType visit(TTypeIntArray a);
	  public TType visit(TVarDecl a);
	  public TType visit(TFormal formal);
}
